/*******************************************************************************
* CHIPSEA F60 WDT HAL
*******************************************************************************/

#include "hal_cs_f60_wdt.h"

#ifdef CS_F60

/*******************************************************************************
@brief : WDT初始化，以LIRC(10KHZ)为时钟源，当前配置为1.6s超时
@param : NONE
@ret   : NONE
*******************************************************************************/
void User_WDT_Init(void)
{
	RCC_APBPeriphClOCKCmd(RCC_APBPeriph_WDT,ENABLE);   //enable the APB bus
	RCC_WDTCLKSourceConfig(RCC_CLKSource_LIRC);        //select the LIRC as the source clock

	//NVIC_IRQxEnable(IRQ_WDT_WWDT);                     //enable the WDT interrupt in NVIC
	//NVIC_IRQPriorityConfig(IRQ_WDT_WWDT,1);                               

	WDT_InitTypeDef WDT_InitStruct;

	WDT_InitStruct.WDT_PeriodTime		= WDT_PERIODTIME;	//WDT_PeriodTime_2q14; //16384 * 0.1 ms ≈1.6s
	WDT_InitStruct.WDT_IntWakeUp_Enable	= WDT_INT_WAKEUP_ENABLE;//DISABLE;           //wdt 中断唤醒
	WDT_InitStruct.WDT_ReSystem_Enable	= WDT_RESYSTEM_ENABLE;	//ENABLE;             //wdt 超时复位
	WDT_InitStruct.WDT_DelayTime		= WDT_DELAY_TIME;	//WDT_DelayTime_3CLK;
	WDT_InitStruct.WDT_Int_Enable		= WDT_INT_ENABLE;	//DISABLE;
	WDT_InitStruct.WDT_Enable		= WDT_ENABLE;		//ENABLE;

	WDT_Init(&WDT_InitStruct);
}

/*******************************************************************************
@brief : 喂狗
@param : NONE
@ret   : NONE
*******************************************************************************/
void hal_wdt_refresh(void)
{
	WDT_TimeReload();
}

#endif /* End of CS_F60 */
